package com.lvmama.rhino.collector.vo

import java.util.Date

import com.lvmama.rhino.collector.utils.Constants

/**
  * Created by yuanxiaofeng on 2016/6/28.
  */

/**
  *
  * @param tailCode losc码
  * @param udid 设备标识
  * @param platform 平台
  * @param messageGetTime 收到消息的时间
  * @param messageClickTime 点击消息的时间
  * @param getFlag 送达标识 1表示成功送达
  * @param clickFlag 点击标识 1表示成功点击
  * @param orderFlag 订单标识 1表示成功下单
  * @param payFlag 支付标识 1标识成功支付
  * @param orderId 订单id
  */
case class PushMessageReceipt(tailCode: String, udid: String, platform: String,
                              messageGetTime: Date, messageClickTime: Date, getFlag: String,
                              clickFlag: String, orderFlag: String, payFlag: String, orderId: String){
  override def toString: String = {
    val builder = new StringBuilder
    builder.append(tailCode).append(Constants.LOG_SEPERATOR_1)
    builder.append(udid).append(Constants.LOG_SEPERATOR_1)
    builder.append(platform).append(Constants.LOG_SEPERATOR_1)
    builder.append(if (messageGetTime != null) messageGetTime.getTime else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (messageClickTime != null) messageClickTime.getTime else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (getFlag != null) getFlag else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (clickFlag != null) clickFlag else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (orderFlag != null) orderFlag else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (payFlag != null) payFlag else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (orderId != null) orderId else " ")
    builder.toString()
  }
}

/**
  * @param lt 日志类型
  * @param ts 时间戳
  * @param ad 地址
  * @param la 经度
  * @param lo 纬度
  * @param av 客户端版本号
  * @param mm 客户端机型
  * @param dt 设备号
  * @param pc 当前页面
  * @param ei 事件id
  * @param qn 常见问题名
  */
case class AIMachineReceipt(lt: String, ts: String, ad: String, la: String,
                            lo: String, av: String, mm: String, dt: String,
                            pc: String, ei: String, qn: String){
  override def toString: String = {
    val builder = new StringBuilder
    builder.append(lt).append(Constants.LOG_SEPERATOR_1)
    builder.append(ts).append(Constants.LOG_SEPERATOR_1)
    builder.append(if (ad != null && ad != "") ad else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (la != null && la != "") la else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (lo != null && lo != "") lo else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(av).append(Constants.LOG_SEPERATOR_1)
    builder.append(mm).append(Constants.LOG_SEPERATOR_1)
    builder.append(dt).append(Constants.LOG_SEPERATOR_1)
    builder.append(if (pc != null && pc != "") pc else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (ei != null && ei != "") ei else " ").append(Constants.LOG_SEPERATOR_1)
    builder.append(if (qn != null && qn != "") qn else " ")
    builder.toString()
  }
}